<?php

/**
 * TOP API: taobao.udp.item.get request
 *
 * @author auto create
 * @since  1.0, 2013-09-13 16:51:03
 */
class Taobao_Request_UdpItemGetRequest {
	/**
	 * 地区ID
	 **/
	private $area;

	/**
	 * 开始时间
	 **/
	private $beginTime;

	/**
	 * 结束时间
	 **/
	private $endTime;

	/**
	 * 指标ID(参阅指标编号)
	 **/
	private $fields;

	/**
	 * 商品ID
	 **/
	private $itemid;

	/**
	 * 多个宝贝列表
	 **/
	private $items;

	/**
	 * 排序指标
	 **/
	private $orderBy;

	/**
	 * 排序规则
	 **/
	private $orderRule;

	/**
	 * 查询页码，0为第一页
	 **/
	private $pageNo;

	/**
	 * 每页记录数
	 **/
	private $pageSize;

	/**
	 * 备用
	 **/
	private $parameters;

	/**
	 * 来源ID
	 **/
	private $source;

	private $apiParas = array();

	public function setArea($area) {
		$this->area = $area;
		$this->apiParas["area"] = $area;
	}

	public function getArea() {
		return $this->area;
	}

	public function setBeginTime($beginTime) {
		$this->beginTime = $beginTime;
		$this->apiParas["begin_time"] = $beginTime;
	}

	public function getBeginTime() {
		return $this->beginTime;
	}

	public function setEndTime($endTime) {
		$this->endTime = $endTime;
		$this->apiParas["end_time"] = $endTime;
	}

	public function getEndTime() {
		return $this->endTime;
	}

	public function setFields($fields) {
		$this->fields = $fields;
		$this->apiParas["fields"] = $fields;
	}

	public function getFields() {
		return $this->fields;
	}

	public function setItemid($itemid) {
		$this->itemid = $itemid;
		$this->apiParas["itemid"] = $itemid;
	}

	public function getItemid() {
		return $this->itemid;
	}

	public function setItems($items) {
		$this->items = $items;
		$this->apiParas["items"] = $items;
	}

	public function getItems() {
		return $this->items;
	}

	public function setOrderBy($orderBy) {
		$this->orderBy = $orderBy;
		$this->apiParas["order_by"] = $orderBy;
	}

	public function getOrderBy() {
		return $this->orderBy;
	}

	public function setOrderRule($orderRule) {
		$this->orderRule = $orderRule;
		$this->apiParas["order_rule"] = $orderRule;
	}

	public function getOrderRule() {
		return $this->orderRule;
	}

	public function setPageNo($pageNo) {
		$this->pageNo = $pageNo;
		$this->apiParas["page_no"] = $pageNo;
	}

	public function getPageNo() {
		return $this->pageNo;
	}

	public function setPageSize($pageSize) {
		$this->pageSize = $pageSize;
		$this->apiParas["page_size"] = $pageSize;
	}

	public function getPageSize() {
		return $this->pageSize;
	}

	public function setParameters($parameters) {
		$this->parameters = $parameters;
		$this->apiParas["parameters"] = $parameters;
	}

	public function getParameters() {
		return $this->parameters;
	}

	public function setSource($source) {
		$this->source = $source;
		$this->apiParas["source"] = $source;
	}

	public function getSource() {
		return $this->source;
	}

	public function getApiMethodName() {
		return "taobao.udp.item.get";
	}

	public function getApiParas() {
		return $this->apiParas;
	}

	public function check() {

		Taobao_RequestCheckUtil::checkNotNull($this->beginTime, "beginTime");
		Taobao_RequestCheckUtil::checkNotNull($this->endTime, "endTime");
		Taobao_RequestCheckUtil::checkNotNull($this->fields, "fields");
		Taobao_RequestCheckUtil::checkMaxListSize($this->fields, 10, "fields");
		Taobao_RequestCheckUtil::checkMaxListSize($this->items, 20, "items");
		Taobao_RequestCheckUtil::checkMaxValue($this->pageSize, 50, "pageSize");
		Taobao_RequestCheckUtil::checkMinValue($this->pageSize, 1, "pageSize");
	}

	public function putOtherTextParam($key, $value) {
		$this->apiParas[$key] = $value;
		$this->$key = $value;
	}
}
